home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / plaf / basic / BasicOptionPaneUI$ButtonAreaLayout.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  2.8 KB  |  154 lines

  1. package javax.swing.plaf.basic;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.Insets;
  7. import java.awt.LayoutManager;
  8.  
  9. public class BasicOptionPaneUI$ButtonAreaLayout implements LayoutManager {
  10.    protected boolean syncAllWidths;
  11.    protected int padding;
  12.    protected boolean centersChildren;
  13.  
  14.    public BasicOptionPaneUI$ButtonAreaLayout(boolean var1, int var2) {
  15.       this.syncAllWidths = var1;
  16.       this.padding = var2;
  17.       this.centersChildren = true;
  18.    }
  19.  
  20.    public void addLayoutComponent(String var1, Component var2) {
  21.    }
  22.  
  23.    public boolean getCentersChildren() {
  24.       return this.centersChildren;
  25.    }
  26.  
  27.    public int getPadding() {
  28.       return this.padding;
  29.    }
  30.  
  31.    public boolean getSyncAllWidths() {
  32.       return this.syncAllWidths;
  33.    }
  34.  
  35.    public void layoutContainer(Container var1) {
  36.       Component[] var2 = var1.getComponents();
  37.       if (var2 != null && var2.length > 0) {
  38.          int var3 = var2.length;
  39.          Dimension[] var4 = new Dimension[var3];
  40.          int var6 = var1.getInsets().top;
  41.          if (this.syncAllWidths) {
  42.             int var7 = 0;
  43.  
  44.             for(int var5 = 0; var5 < var3; ++var5) {
  45.                var4[var5] = var2[var5].getPreferredSize();
  46.                var7 = Math.max(var7, var4[var5].width);
  47.             }
  48.  
  49.             int var8;
  50.             int var9;
  51.             if (this.getCentersChildren()) {
  52.                int var10001 = var7 * var3 + (var3 - 1) * this.padding;
  53.                var8 = (((Component)var1).getSize().width - var10001) / 2;
  54.                var9 = this.padding + var7;
  55.             } else if (var3 > 1) {
  56.                var8 = 0;
  57.                var9 = (((Component)var1).getSize().width - var7 * var3) / (var3 - 1) + var7;
  58.             } else {
  59.                var8 = (((Component)var1).getSize().width - var7) / 2;
  60.                var9 = 0;
  61.             }
  62.  
  63.             for(int var11 = 0; var11 < var3; ++var11) {
  64.                var2[var11].setBounds(var8, var6, var7, var4[var11].height);
  65.                var8 += var9;
  66.             }
  67.          } else {
  68.             int var14 = 0;
  69.  
  70.             for(int var12 = 0; var12 < var3; ++var12) {
  71.                var4[var12] = var2[var12].getPreferredSize();
  72.                var14 += var4[var12].width;
  73.             }
  74.  
  75.             var14 += (var3 - 1) * this.padding;
  76.             boolean var16 = this.getCentersChildren();
  77.             int var10;
  78.             int var17;
  79.             if (var16) {
  80.                var10 = (((Component)var1).getSize().width - var14) / 2;
  81.                var17 = this.padding;
  82.             } else if (var3 > 1) {
  83.                var17 = (((Component)var1).getSize().width - var14) / (var3 - 1);
  84.                var10 = 0;
  85.             } else {
  86.                var10 = (((Component)var1).getSize().width - var14) / 2;
  87.                var17 = 0;
  88.             }
  89.  
  90.             for(int var13 = 0; var13 < var3; ++var13) {
  91.                var2[var13].setBounds(var10, var6, var4[var13].width, var4[var13].height);
  92.                var10 += var17 + var4[var13].width;
  93.             }
  94.          }
  95.       }
  96.  
  97.    }
  98.  
  99.    public Dimension minimumLayoutSize(Container var1) {
  100.       if (var1 != null) {
  101.          Component[] var2 = var1.getComponents();
  102.          if (var2 != null && var2.length > 0) {
  103.             int var4 = var2.length;
  104.             int var5 = 0;
  105.             Insets var6 = var1.getInsets();
  106.             int var7 = var6.top + var6.bottom;
  107.             if (this.syncAllWidths) {
  108.                int var12 = 0;
  109.  
  110.                for(int var13 = 0; var13 < var4; ++var13) {
  111.                   Dimension var10 = var2[var13].getPreferredSize();
  112.                   var5 = Math.max(var5, var10.height);
  113.                   var12 = Math.max(var12, var10.width);
  114.                }
  115.  
  116.                return new Dimension(var12 * var4 + (var4 - 1) * this.padding, var7 + var5);
  117.             }
  118.  
  119.             int var8 = 0;
  120.  
  121.             for(int var9 = 0; var9 < var4; ++var9) {
  122.                Dimension var3 = var2[var9].getPreferredSize();
  123.                var5 = Math.max(var5, var3.height);
  124.                var8 += var3.width;
  125.             }
  126.  
  127.             var8 += (var4 - 1) * this.padding;
  128.             return new Dimension(var8, var7 + var5);
  129.          }
  130.       }
  131.  
  132.       return new Dimension(0, 0);
  133.    }
  134.  
  135.    public Dimension preferredLayoutSize(Container var1) {
  136.       return this.minimumLayoutSize(var1);
  137.    }
  138.  
  139.    public void removeLayoutComponent(Component var1) {
  140.    }
  141.  
  142.    public void setCentersChildren(boolean var1) {
  143.       this.centersChildren = var1;
  144.    }
  145.  
  146.    public void setPadding(int var1) {
  147.       this.padding = var1;
  148.    }
  149.  
  150.    public void setSyncAllWidths(boolean var1) {
  151.       this.syncAllWidths = var1;
  152.    }
  153. }
  154.